shell: sftp获取远程文件信息到本地;sftp上传多个文件;ftp上传多个文件

您所在的位置:网站首页 ftp 多个文件 shell: sftp获取远程文件信息到本地;sftp上传多个文件;ftp上传多个文件

shell: sftp获取远程文件信息到本地;sftp上传多个文件;ftp上传多个文件

2023-08-15 01:34| 来源: 网络整理| 查看: 265

以下是本人在写一个通用的sftp\ftp上传脚本(带检查和重试功能)时碰到的问题,问过度娘,没有好的解决办法,后来自己解决的,特共享出来,供大家参考。

以下内容是在linux环境进行过验证,AIX下应该是通用。如果有描述不对的地方,请友好提出,不要口吐芬芳,谢谢。

由于办公电脑无法连外网,以下是通过个人电脑纯手工敲打。只做参考,使用时,可将变量都通过变量传入。

1. 简单办法 sftp 获取远程ls信息到本地:

 shell中通过函数的方式,将远程ls内容输出到本地,然后通过grep -v 进行加工去掉不必要的数据,得到最后的 ftpinfo.tmp

sftpGetLsInf() { sftp_ls() { sftp [email protected] ./ftpinfo.tmp0 grep -v 'sftp>' ./ftpinfo.tmp0 > ./ftpinfo.tmp rm -f ./ftpinfo.tmp0 }

ftp就好说了,直接 mdir  test.txt ./localdir/ftpinfo.tmp  即可将 test.txt详细信息缓存到本地ftpinfo.tmp文件中

 

2. sftp是否能批量上传文件?

答: 没办法通过 put  a.txt  b.txt   或者 mput a.txt  b.txt  上传多个明确的文件。这样只会将a.txt上传后改名成b.txt。

但可以 mput *.txt  这样通过通配符上传多个文件

 

3. ftp 是否能批量上传文件?

答: ftp 可以通过 mput  a.txt  b.txt 或者  mput  *.txt 上传多个文件。

ftp中 put  a.txt  b.txt 和sftp一样,也会将a.txt上传后改名成b.txt



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3